package com.zhanghao.sdk;

import android.content.Context;
import android.content.Intent;

import com.zhanghao.sdk.callback.IZHSDKCallback;
import com.zhanghao.sdk.model.Order;
import com.zhanghao.sdk.model.Role;

import java.util.HashMap;

// 暴漏给研发使用的接口
public interface IUnionSDK {
    /**
     * 初始化
     * @param context activity上下文
     * @param SDKCallback sdk初始化回调
     */
    void init(Context context, IZHSDKCallback SDKCallback);

    /**
     * 登录
     */
    void login();

    /**
     * 支付
     */
    void pay(Order order);

    /**
     * 游戏角色上报
     * @param eventName 事件名称，有三个可选常量：ENTER_GAME 进入游戏；.CRATE_ROLE 创建角色；ROLE_LEVEL 角色升级；
     * @param roleInfo 角色信息
     */
    void gameReport(String eventName, Role roleInfo);

    /**
     * 自定义事件
     * @param eventName 事件名称
     * @param args 参数
     */
    void customEvent(String eventName, HashMap args);

    void logOut();

    // 生命周期
    void onActivityResult(int requestCode, int resultCode, Intent data);
    // 生命周期
    void onResume();
    // 生命周期
    void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults);

}
